The present invention relates to the problem of design and user input interface changes in different computerized devices. Further, the invention relates to a method and terminal device for mapping a virtual user input interface to a physical user input interface. The invention is also related to the compatibility of applications (games and other applications running on e.g. mobile phone terminals, personal digital assistants and the like) on different types/generations of terminals these applications are executed on.
Up to now new computer terminals or mobile terminal devices have only been expanded in their user interface, i.e. new buttons (or other user input elements) have been implemented on the user inter face. For example the second generation Playstation™ controllers are provided with additional “thumbsticks”, an analogue key to activate the analogue operation of the buttons and an LED (light emitting) to indicate this analog operation of the input devices.
Similarly the evolution of standard “qwerty-” computer keyboard allowed different implementations of additional hot-, shortcut and functions keys for certain applications such as e.g. keys for controlling multimedia applications, or calling the pocket calculator application and the like.
Virtual keyboards, being non-physical, essentially require a means to be fed with input utilizing a method which enables mapping of the virtual keyboard to intended input. Currently the combination of a pen user interface for controlling the virtual keypad with a device-accessory pen via a touch screen is the standard solution for example for PDAs and Palmtop PDAs. In these cases the change of the touch-screen user interface happens rarely.
Up to now no downward compatible devices with significantly different designed user input interfaces have been implemented as can be seen on the not very user friendly qwerty computer key board with its slightly displaced key rows that can be traced back to the mechanical typewrites.
It is therefore desirable to enable a designer to significantly change the design of a user input interface without the restrictions of traditional and conventional input interfaces, while enabling downward compatibility.
It is also desirable to provide a good usability for applications (such as game applications) even if the device the application is executed on has a different set of input interfaces (keys/controls) (e.g. game controls instead of a phone keypad)
It is further desirable to provide a possibility to avoid virtual keypads with a low usability.
It is further desirable to provide a user interface, which enables a user to understand the different functionalities of the application control possibilities with different types of keyboards or user input interfaces quickly.
It is also desirable to eliminate the constraints of strictly downward compatible designed user interfaces to provide downward compatibility of the user input to mobile terminal devices.
It is also desirable to improve the usability of virtual keyboards by providing an intuitive input method to a virtual keyboard on mobile terminal devices.
It is desirable to increase the usability of virtual keypads for gaming applications that are unable to offer a non-arbitrary mapping for game control keys (such as shoulder keys, action keys, joysticks, etc.).
It is also desirable to prevent that a user has to learn a new mapping separately for each application executed on a downward compatible mobile terminal device if the mapping depends on each application.
According to a first aspect of the present invention, there is provided a method for mapping a virtual user input interface to a physical user input interface on a mobile terminal device. The method is intended to be executed or performed on a mobile terminal device having a first physical user input interface, a display and a processing unit being connected to said display and said physical user interface. The mobile terminal device is capable of executing applications that are configured for the use with a second user interface (that is not provided on or is not ready at said mobile terminal device). It is further expected that said second user input interface not being completely included in said first physical user input interface, i.e. the first physical user input interface is not just the second user input interface extended by a number of additional buttons or input elements.
The method comprises the steps of detecting an event indicative of an application to be executed that is configured for the use with a second user interface, displaying a virtual user input interface representing said second user input interface on said display, receiving a physical user input on said first physical user input interface, mapping said received physical input to said virtual user input interface, and displaying an indication of a virtual input on said virtual user input interface.
It is to be noted that this method may be implemented on said mobile terminal device by a program or an adaptation software for adapting the user output interface to the format and properties of the second device.
This basic embodiment is provided to enable a fast and simple learning of a new control interface of a new mobile terminal to enable a downward compatibility to devices with a different user interface.
It should be noted that said second user interface may also be provided on a mobile terminal device. For example, an advanced foldable mobile phone/gaming device having a set of different operation modes including e.g. a closed phone mode with a small user interface, and an open gaming mode with a large user interface. The device could be equipped with two displays of different sizes; a large screen for gaming, and a smaller one for phone functionality. The device can operate so that it provides an enhanced gaming experience when functioning in the gaming mode. However it is more compact and easier to handle, when the device is in the phone mode. The virtual user input interface can be mapped with physical input elements to realize mapping of enhanced gaming input methods, when the device is operating with the smaller display.
In an example embodiment of the present invention the method further comprises starting said application and using said mapped input as an input to control said application after the application has been started. This enables a user to use a depicted virtual user interface to control an application. In this special embodiment the application may not require any display output (such as in case of a sound or audio application).
In another example embodiment of the method of the present invention said event indicative of an application to be executed that is configured for the use with a second user interface, is a user input. The user input may comprise e.g., the calling for the activation of this application. It is also envisaged to use the present invention as an extension to a “help” menu point to assist a user in comprehending the input functionality of a device with an amended user interface.
In yet another example embodiment of the method of the present invention said event indicative of an application to be executed that is configured for the use with a second user interface, is a detection of a connected memory card. In this case the mobile terminal device further comprises an extension memory card slot for receiving a software or software modules stored on an interchangeable memory module. The concept of software stored on interchangeable memory modules is for example known from gaming consoles. The device may use e.g. a time information on said memory module to determine if the mapping is to be activated and the virtual user input elements are to be displayed or not.
In another example embodiment of the present invention said method further comprises displaying a virtual display content related to the operation of said application or to said virtual user input interface on said display. This feature enables the use of the virtual input elements while a demo version of an application is executed to support the learning process of a user. This feature can provide the virtual input elements while the application is executed, which is especially useful if the virtual display occupies only a part of the display area of the physical display. The unoccupied areas of the physical display may serve to indicate the virtual display in operation.
In yet another example embodiment of the method of the present invention said indication of a virtual input on said virtual user input interface comprises highlighting an “operated” virtual user input interface element. This highlighting may be done by a virtual key or input element illumination. That is, a light can be used to indicate actuated virtual input elements. Highlighting can indicate especially the actuation of buttons and keys. The highlighting may be varied in color to indicate a combined input or an activated second function key (such as e.g. the known “shift key”). It is also envisaged to highlight the activated second-function key with a first color and to indicate the other available input options on the virtual user input interface with a different second color, to give hints to the user. It is also contemplated to highlight the activated virtual second-function key with a first color (e.g. yellow) and to indicate the other available input options on the physical user input interface (with e.g. blue), to give hints to the user.
It is also taken into consideration that the physical user interface is provided with individual interface element illuminations that can be operated with different colors. This feature would allow a user to recognize the mapping function instantaneously, if the correlated physical input elements and the virtual input elements are illuminated or displayed in the same color. This may be simplified if a set of colors is used for each side of the user input interfaces. In this configuration input can be indicated on the virtual input interface by an increased intensity or brightness.
In another example embodiment of the method of the present invention said indication of a virtual input on said virtual user input interface comprises moving an “operated” virtual user input interface element. Moving in this context means the motion of a virtual user interface element on said display. This application is especially useful in connection with virtual joystick input elements to indicate the direction of a performed and mapped user input. In case of physical input elements provided with force feedback actuators it may be envisaged to indicate the mapping by synchronously and individually moving mapped physical input elements and virtual input elements simultaneously and synchronously.
Another example embodiment of the method is executed on a mobile terminal device, wherein said first physical user input interface is the input interface of said mobile terminal device and second user interface is an interface of another mobile terminal device. This application is useful if a device can execute an application while emulating another device.
In just another example embodiment the method further comprises retrieving said virtual user input interface from an internal memory of said terminal device. The invention is related to the downward compatibility of a mobile terminal device such as a gaming device, a cellular telephone or a mobile game phone. Due to the downward compatibility it could be expected that the data required for displaying said virtual user input interface is not provided by the application or a software module (that has been designed for an older device) but by the terminal device itself. These data may be stored in a proprietary memory module in said mobile terminal device for example in a mapping data base provided in said terminal device. It is also contemplated to use e.g. storage space on an interchangeable memory module to store the mapping data and data for generating the virtual user input interface.
In yet another example embodiment of the invention the method further comprises determining the second user interface said application is configured for, and retrieving a matching virtual user input interface accordingly. This embodiment is provided to use different user interfaces of different types of antecessor devices. This can be used, if the input interface design is significantly changed twice in three generations of devices, or if the device is downward compatible to different antecessor devices.
In another example embodiment of the method of the present invention said virtual user input interface is retrieved from a remote server via a wireless communication connection. In the case of the above implementations the capability to access different types of virtual user input data may be used to emulate even devices that have not been intended to be emulated on said mobile terminal device. The data communication connection may use a cellular phone data transmission technology such as e.g. GPRS (of GSM) or a respective system of e.g. UMTS. The data communication connection may also comprise a connection via Internet.
In still another example embodiment of the present invention the method further comprises displaying a text descriptive of the functionality of said user input on said display. The present invention is generally only useful for people who have used a certain application on an antecessor model of the mobile terminal. The benefit for people not having used the old version on the old model the benefit is restricted to an adaptation of application help files that refer to the original second user input interface. When indicating a textual description of the functionality of the actually received user input by pressing a key, any user can simply recognize not only the correlation forming the basis of the mapping but also the functionality of this key in the application.
This functionality due to the mapping operation is the same for the received physical user input and for the mapped and indicated virtual user input.
According to yet another aspect of the invention, a software tool is provided comprising program code means for carrying out the method of the preceding description when said program product is run on a computer or a network device.
According to another aspect of the present invention, a computer program product downloadable from a server for carrying out the method of the preceding description is provided, which comprises program code means for performing all of the steps of the preceding methods when said program is run on a computer or a network device.
According to yet another aspect of the invention, a computer program product is provided comprising program code means stored on a computer readable medium for carrying out the methods of the preceding description, when said program product is run on a computer or a network device.
According to another aspect of the present invention a computer data signal is provided. The computer data signal is embodied in a carrier wave and represents a program that makes the computer perform the steps of the method contained in the preceding description, when said computer program is run on a computer, or a network device.
Preferably the computer program and the computer program product are distributed in different parts and devices of the network. The computer program and the computer product device run in different devices of the network. Therefore, the computer program and the computer program device have to be different in abilities and source code.
According to yet another aspect of the present invention a mobile terminal device is provided that is capable of mapping a virtual user input interface to a physical user input interface. The mobile terminal comprises a physical user input interface, a display and a processing unit. Said processing unit is connected to said display and said physical user interface.
The mobile terminal device is also provided with a mapping module and a mapping database. The mapping module is connected to said processing unit and to said physical user input interface and said mapping database is connected to said mapping module.
The processing unit is capable of executing applications that are configured for the use with another second user interface. Said processing unit is further configured to detect that an application is to be executed that is configured for the use with said second user interface.
Said mapping module is configured to display a virtual user input interface that represents said second user input interface on said display. Said mapping module is further configured to map a received physical input to said virtual user input interface and display an indication of a virtual input on said virtual user input interface on said display, if a physical user input is received on said first physical user input interface. Said mapping database is configured to store data such as (second virtual) user interfaces or mapping relations or even application identifications required for the mapping process.
The expression “physical user input interface” has been selected to be able to clearly differentiate between a virtual and a physical user interface. The physical user input interface can comprise user input elements such as buttons, keys, joysticks, coolie-hats, trigger buttons, shoulder keys, wheels or sliders, dials, turning knobs and the like.
For the sake of clarity and conciseness a power supply such as a battery pack or components such as display driver modules and memory modules in the terminal device have been economized.
The mapping module may be embodied as a section in said processing unit and the mapping database may be embodied as a section of a memory module provided in said terminal device.
In another example embodiment of the present invention said mobile terminal device is further provided with a cellular telephone module. This embodiment is directed to an implementation of the present invention in a mobile cellular game phone, a combination of a mobile gaming console and a mobile telephone. Especially in this embodiment a change of the user interface for new game concepts provides a wide application area for the mapping concept of the present invention.
In yet another example embodiment of said mobile terminal device said display is a touch-screen display. Touch-screen displays have a wide variety of different applications for additional input features. This special feature may be used to provide also the “inverse” implementation of the present invention. The inverse implementation could be used if e.g. the physical user input elements are provided with individual illumination elements, by highlighting the physical user input element on the terminal device, if a user touches a virtual input element of the second user input interface. It is also possible that a user uses the touch-screen itself (or the depicted user interface) as well as a normal virtual user interface. This implementation enables a user to choose between a real user interface and the virtual user interface for performing user input. The depicted virtual input interface and the real user interface enable the user to use e.g. both input interfaces simultaneously, e.g. the thumbstick with the right hand and the virutual input interface with the rigth hand for performing user input.
In still another example embodiment of the present invention the terminal device is further provided with an interface for receiving memory modules that is connected to said processing unit. By using memory modules the device of the present invention can use the method of the present invention with applications that are stored on interchangeable memory devices. This embodiment is usable for hard coded game application memory modules used for portable gaming consoles.
In the detailed description that follows, identical components have been given the same reference numerals, regardless of whether they are shown in different embodiments of the present invention. In order to clearly and concisely illustrate the present invention, the drawings may not necessarily be to scale and certain features may be shown in somewhat schematic form.